\section{Arbre n-aire}

Les arbre n-aires sont des arbres où le nombre de fils par noeud est au plus égal à n. Cela pose la problématique de la structure utilisé pour stocker l'ensemble 
des fils de chaque noeud de l'arbre. Cette structure pourrait être un tableau indexé, une liste chainée, une liste doublement chainée, ou une pile donc il apparait clairement
que la structure permettant de stocker les fils  d'un noeud de l'arbre k-aire doit être d'un paramètre générique de la classe.

De plus comme il hérite de la classe abstraite arbre dans son inferface il faut qu'il y ait les opérations d'ajout et de suppression.
Mais ces opérations seront spécifiques à son comportement.


\subsection{Implémntentation des iterateurs}
Tout comme sa classe mère, les itérateurs lui sont associés mais ces itérateurs seront concret. Les intérateurs tels que le parcours en profondeur d'abord, le parcours en largeur

\section{Tas}
Les tas sont des structures arboresente définie de manière reccursive c'est-à-dire que le père est toujours plus petit ou plus grand selon une certaine relation d'ordre que ses fils. Son nombre de fils peut varier,
ce qui explique le fait que nous l'avons placé comme une classe fille des arbres n-aires. Mais cette structure de donnée reste une class abstraite, car en effet les tas ne représentent pas une structure assez concrètes.


\subsection{Arbres binomiaux}
Un arbre binomial $B_k$ est un arbre ordonné défini de manière réccursive c'est-à-dire que son nombre de fils est égale à $k -1$  et son i-ième fils est un arbre binomial d'ordre i.
Et de ce fait son nombre de fils est de $2^k$ et sa hauteur est égale à k. Cette structure est utilisée dans les tas binomiaux. En effet nous avons choisi de placer les arbres binomiaux comme étant une sous classe
des arbres n-aires car un arbre binomial d'ordre k est un arbre k-aire  c'est-à-dire que le nombre maximum de fils par noeud est égale à k.

